Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Great designer



  Automate Everything

Performing manual, repetitive tasks enrages me. I used to think this was a corollary of being a programmer, but I’ve come to suspect (or hope) that this behaviour is inherent in being human. But being able to hack together scripts simply makes it much easier to go from a state of rage to a basic solution in a very small amount of time. As a side point, this is one of the reasons that teaching the basics of programming in schools is so important. It’s hard to think of any j...

   Automate,Email,Repeative     2012-02-07 06:21:19

  SOME LESSONS LEARNED

Note: Google was kind enough to invite me to give a short talk at their Zeitgeist conference earlier this week. It was a really interesting conference and I got a chance to meet a lot of people I admire. For my talk, I decided to use material from some of my blog posts over the years that I thought might appeal to a broader audience. Unfortunately, I was still recovering from a nastly cold/flu so I didn’t deliver the talk as well as I’d like.  Below is the text.Today, I wanted...

   Investor,Startup,Lesson,Experience,Investment     2011-10-12 11:47:02

  JavaScript as a First Language

At Khan Academy we've been investigating teaching Computer Science to students in some new and interesting ways. The most interesting aspect of which is that we're likely going to be teaching them JavaScript as their first language. We're in a very unique position as we're primarily aiming to teach students who've been through our previous math and science-centric curriculum. Because of this we can create some rather compelling exercises and projects that never would've been feasible other...

   JavaScript,Learning,First language,Inheritence,Prototype     2011-12-23 07:53:45

  Code reviews in the 21st Century

There's an old adage that goes something like: 'Do not talk about religion or politics'.  Why?  Because these subjects are full of strong opinions but are thin on objective answers.   One person's certainty is another person's skepticism; someone else's common sense just appears as an a prior bias to those who see matters differently.  Sadly,  conversing these controversial subjects can generate more heat than light.   All too often people can get s...

   Code review,21 Centuary     2012-02-10 06:39:14

  Why I switched from Ruby back to C++

After two months of Sol Trader development in Ruby, I took a difficult decision last Wednesday morning: I’ve decided to rewrite the game code from scratch in C++. Let me explain my reasons. If you'd like to receive announcements about Sol Trader or be part of the beta program, sign up at soltrader.net. Why I did it Slow frames: When working with Ruby, I use the excellent Gosu library to do all my game specific coding. This initially worked great, but occasionally I’d just...

   C++,Ruby,Advantage,Feature     2012-01-09 08:56:21

  The Five Stages of Hosting

As a proud VPS survivor, I thought it might be fun to write up five common options for hosting a web business, ranked in decreasing order of 'cloudiness'. People who aren't interested in this kind of minutia would be wise to pull the rip cord right here. 1. The Monastery You run your site on an 'application platform' like Heroku, Azure, or Google App Engine. You design your application around whatever metaphors and APIs the service lays out, and in return you are veiled from all t...

   Website hosting,Recommendations,Stages,Advantages     2012-01-30 05:43:42

  Thoughts on Python 3

I spent the last couple of days thinking about Python 3's current state a lot. While it might not appear to be the case, I do love Python as a language and especially the direction it's heading in. Python has been not only part of my life for the last couple of five years, it has been the largest part by far. Let there be a warning upfront: this is a very personal post. I counted a hundred instances of a certain capital letter in this text. That's because I am very grateful for all the opport...

   Python,Python 3,Feature,Drawback,Embrace     2011-12-07 08:46:47

  Have you used these JavaScript libraries before?

Are you a vanilla JavaScript developer or a JavaScript library lover?  If you are a vanilla JavaScript developer, please feel free to step away silently because you may not get what you want, but if you are a library or framework lover, please bookmark this page as what we list below are what you may use in the future. There are tons of JavaScript libraries created to ease the headache of developers who have to deal with different browsers on different devices. You may use some of them befo...

   JavaScript,Framework,Library     2014-09-27 22:06:55

  How to Think Creatively

I grew up hungry to do something creative, to set myself apart. I also believed creativity was magical and genetically encoded. As early as the age of 8, I began sampling the arts, one after another, to see if I'd inherited some gift.Eventually, I became a journalist. For many years, I told other people's stories. I was successful, but I rarely felt truly creative.The first hint I might have sold myself short came in the mid-1990s. In the course of writing a book called What Really Matters, Sear...

   Creative thinking,Saturation,Incubation,Illumination,Verification     2011-11-14 08:39:11

  Hash Tables in Javascript

IntroductionHash tables are a permutation of associative arrays (i.e. name => value pairs). If you use PHP, then you are very familiar with this type of data structure already since all PHP arrays are associative.The Javascript language implements very loose and somewhat limited support for associative arrays. Any JavaScript array can use other objects as keys, making it a hash, but there exists no formal constructor for initializing them and it is more or less unweildy to work with. A short ...

   JavaScript,Hashtable,Implementation,Array     2011-11-26 02:43:40